home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / lisp / elk-2_0.lha / elk-2.0 / include / cstring.h < prev    next >
C/C++ Source or Header  |  1992-09-30  |  479b  |  21 lines

  1. #ifndef CSTRING_H
  2. #define CSTRING_H
  3.  
  4. #define Declare_C_Strings Alloca_Begin
  5.  
  6. #define Make_C_String(_from,_to) {\
  7.     int _len;\
  8.     if (TYPE(_from) == T_Symbol)\
  9.     (_from) = SYMBOL(_from)->name;\
  10.     else if (TYPE(_from) != T_String)\
  11.     Wrong_Type_Combination ((_from), "string or symbol");\
  12.     _len = STRING(_from)->size;\
  13.     Alloca ((_to), char*, _len+1);\
  14.     bcopy (STRING(_from)->data, (_to), _len);\
  15.     (_to)[_len] = '\0';\
  16. }
  17.  
  18. #define Dispose_C_Strings Alloca_End
  19.  
  20. #endif
  21.